package com.ruicar.afs.cloud.contract.gateway.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import com.ruicar.afs.cloud.contract.gateway.enums.ApiStatus;
import com.ruicar.afs.cloud.contract.gateway.enums.ApiType;
import com.ruicar.afs.cloud.contract.gateway.enums.ProcessorName;
import com.ruicar.afs.cloud.contract.gateway.enums.ResponseType;
import lombok.Data;

/**
 * The type GateWayApiMapping
 * <p>Description: </p>
 *
 * @author Fzero
 * @version 1.0
 * @date Created on 2020.07.20 21:17:41
 * @since 1.0
 */
@Data
@TableName("gateway_api_mapping")
public class GateWayApiMapping extends BaseEntity<GateWayApiMapping> {
    /**
     * Api name
     * <p>Description: </p>
     */
    private String apiName ;
    /** 请求路径 */
    private String apiUri ;
    /** 接口类型;page-分页查询型接口;data-数据接口 */
    private ApiType apiType ;
    /** 接口状态;online-在线;mock-mock数据 */
    private ApiStatus status ;
    /** 处理器名称 */
    private ProcessorName processorName ;
    /** 系统探测取值表达式;输入时用来预判是那个系统，不配置会从多个系统都获取一遍(最好配置)*/
    private String systemDetectExpress ;
    /** 显示顺序（分页用）;分页接口时数据加载顺序 */
    private String pageShowOrder ;

    /** 数据返回类型;wrapper-afs包装类型,original-原始类型 */
    private ResponseType responseType;
    /** 成功返回码key和值;page接和query接口使用 */
    private String responseCodeMapping;
    /** 返回数据映射key和类型;page接和query接口使用 */
    private String responseDataMapping;
    /** 后置处理js脚本;输出值计算脚本 */
    private String postScript ;
}
